An Algorithm to Automate Non-Unimodular Transformations of Loop Nests

نویسنده

  • Jingling Xue
چکیده

This paper provides a solution to the open problem of automatic rewriting loop nests for non-unimodular transformations. We present an algorithm that rewrites a loop nest under any non-singular (unimod-ular or non-unimodular) transformation. The algorithm works nicely with unimodular transformations being treated as a special case. The rst step of the algorithm calculates the loop bounds using the Fourier-Motzkin elimination method. The second step relies on a method based on the theory of Hermite normal form and lattice and is only needed for non-unimodular transformations. It consists of calculating the loop strides and adjusting the loop bounds derived in the rst step so that the \holes" in the image iteration space are skipped. The time complexity of the second step is polynomial, which is the time complexity of calculating the Hermite normal form of an nn matrix, where n is the depth of the loop nest. The adjusted loop bounds are the simplest that can be expected.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Automating Non-Unimodular Loop Transformations for Massive Parallelism

Loop transformations have been shown to be very useful in parallelising compilation and regular array design. This paper provides a solution to the open problem of automatic rewriting loop nests for non-unimodular loop transformations. We present an algorithm that rewrites a loop nest under any non-singular (unimodular or non-unimodular) transformation in a mechanical manner. The algorithm work...

متن کامل

Affine-by-Statement Transformations of Imperfectly Nested Loops

A majority of loop restructuring techniques developed so far assume that loops are perfectly nested. The unimodular approach unifies three individual transformations – loop interchange, skewing and reversal – but is still limited to perfect loop nests. This paper outlines a framework that enables the use of unimodular transformations to restructure imperfect loop nests. The concepts previously ...

متن کامل

Non - unimodular Transformations of Nested

This paper presents a linear algebraic approach to modeling loop transformations. The approach uniies apparently unrelated recent developments in super-compiler technology. Speciically we show the relationship between the dependence abstraction called dependence cones, and fully permutable loop nests. Compound transformations are modeled as matrices. Non-singular linear transformations presente...

متن کامل

A Loop Transformation Theory and an Algorithm to Maximize Parallelism

AbstructThis paper proposes a new approach to transformations for general loop nests. In this approach, we unify all combinations of loop interchange, skewing and reversal as unimodular transformations. The use of matrices to model transformations has previously been applied only to those loop nests whose dependences can be summarized by distance vectors. Our technique is applicable to general ...

متن کامل

Towards Unimodular Transformations for Non-perfectly Nested Loops

In this paper we discuss a possibility to extend unimodular transformations to non-perfectly nested loops. The main idea behind this extension is to convert a non-perfectly nested loop into a perfectly nested one by moving code into to innermost loop and properly guarding it to avoid multiple execution. This form of the loop can be viewed as an intermediate form for the transformation. Having o...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1993